package com.briup.bms.common.config;

import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

import com.briup.bms.common.exceptions.BmsServiceException;
import com.briup.bms.common.utils.Result;

@RestControllerAdvice
public class GloableExceptionConfig {
	//统一异常处理。针对于Controller中抛出所有的BmsServiceException,都会调用这个方法进行异常处理返回。
		@ExceptionHandler(BmsServiceException.class)
		public Result<String> handlerBmsServiceException(BmsServiceException e) {
			System.out.println("通过handlerBmsServiceException。。。。");
			return Result.error(e.getCode(), e.getMessage());
		}

		//所有无法精确匹配的异常。都会调用此方法进行处理。
		@ExceptionHandler(Exception.class)
		public Result<String> handlerException(Exception e) {
			System.out.println("通过handlerException处理。。。。");
			e.printStackTrace();
			return Result.error(e.getMessage());
		}
}
